
*******************************
**** SNITCH NAGRA AUTORROL ****
****      CAMID 1800       ****
*****                     *****
******                   ******
*****                     *****
****         v3.0          ****
****                       ****
****       Build 53        ****
*****                     *****
******      Beta 4       ******
*******                 *******
*******************************


SNITCH is a MDAPI (MultiDec API) Plug-In for EMM interpretation and operational key retrieval.

To be used on an existing installation of ProgDVB (>= 3.92), Multidec 9.x, HispaDVB 0.6.x
or CATT (>=0.21) with Yankse. FAUST/Fenrir should not be active! WTVP is NOT supported.


For users of previous versions - VERY IMPORTANT:
    Snitch as always tried to be, more than just some AU software, a tool for Nagra investigation.
    In this 3.0 version, it made another huge step towards a better and more perfect emulation.
    Unlike previous versions and also unlike most emulators, hardware or software, it now
    emulates also the card's math co-processor. This feature was preceded, to the best
    of my knowledge, only by SOSIA, a Nagra study software by Viriato.
    As a result, the card's own code is used to receive validate and decrypt all commands.
    This takes, with no doubt, more CPU. However, emulation will be more close to the real card
    thus avoiding a considerable number of attacks. On top of that, new providers can be added
    simply by changing the card's EEPROM file (no need to edit text files with master keys and
    so on).

    Some other changes in use are also to consider:
       - It supports a single card at a time! If you want several providers in one card, you
         must proceed as you would for MOSCing an original card. I include an EEPROM dump for
         the previous 3 providers, however you should note that this makes it is less immune to
         attacks. In case you desire a more perfect emulation, use your card's original data with
         no change.
       - Only ROM10 is supported (for now, at least).



For setup, please follow the instructions below carefully.

1 - Backup SoftCam.key (and all other .key files you may have on the program directory).

2 - Remove all .key files from the program directory but LEAVE A COPY of SoftCam.key.

3 - Make sure your SoftCam.key contains lines for the provider you want to service.

    If you intend to use the provided MOSCed EEPROM, for all 3 providers (D+, Pols@t and TvC@bo).
    Something like this:

N 4001 00 0000000000000000
N 4001 01 0000000000000000

N 4801 00 0000000000000000
N 4801 01 0000000000000000

N 7001 00 0000000000000000
N 7001 01 0000000000000000


5 - Place all included files/folders (KEEPING DIRECTORY STRUCTURE) in program plugins directory
    (or, if the program does not have a plugins directory, the program directory itself).

6 - If you want to use your own EEPROM image, change the eeprom.bin file in the SnitchCard
    directory with your own.

7 - Start the program and tune into an encrypted channel from your provider. If your existing 
    keys are not up-to-date, no image should be available yet.

6 - On the SNITCH menu select "EMM->Find Keys"

7 - Wait for Keys to be found (couple of minutes - depends of the provider). You can also activate
    Snitch's Monitor window to check the activity.

8 - You can leave "Find Keys" running. If you do, new keys will be found even faster and at
    virtually no CPU cost.



Notes:

 - EEPROM Images:   The best way to validate your images is to get a hold on SOSIA software and try
                    the file. If it works there, then it should work also in Snitch.

 - SnitchCmd:       This tool allows you to test an CMDs via command line (instead of MD-API interface).
                    For Study/Test only. Run it and, on the prompt, type commands in T=1 format. When
                    processing is completed, significant values will be displayed (some commands take
                    some time to process).

 - Monitor Window:  This new option allows you to monitor some internal information from Snitch, such
                    as the current EMM-PID, the rithm EMMs are being delivered and the number of EMMs
                    in cache.

 - EMM PID:         The DVB program is responsible for keeping and delivering the EMM-PID to Snitch.
                    Is the program does not support this, Snitch WILL NOT WORK. A good way to determine
                    if your program is delivering the required info, is to open the monitor window and
                    check if the "Current Filter" changes to a value different than zero when you start
                    "Find Keys". WTVP is an example of an program witch cannot deliver this info and,
                    thus, will not work.

 - Write EMM Cache: Option that writes the content of the EMM Cache to an T=1 TXT formatted file.
                    Tune a channel, activate "Find Keys" and leave it running for a while (even after
                    it has found the keys). When you select this option the created file will contain
                    all the EMMs received since "Find Keys" was activated.

 - Soft-CI:         Soft-CI 5.x for Multidec9 Locks the SoftCam.key file during operation. Therefore
                    Snitch is not compatible with it.

 - Support:         No support whatsoever. Bug reports and suggestions are welcome though...

 - Digital Sign:    All included binary files made by AlphaAXP are digitally signed. You should verify
                    the signature before installing them, for your own protection against forgery.
                    (details on verification steps were made available in most common forums).



Changes from V3.0 Beta 3 Build 52:
 - New code for CA selection on the emulated IRD (now really selecting the chosen system
   on the app). Only tested on ProgDVB so feedback would be nice with others.
 - SnitchCMD also with run on card emul
 - Changes on command sending timings, more adequate to v3 emulation model

Changes from V3.0 Beta 2 Build 49:
 - No more RAM initial conditions. Card's original code for reset used!
 - EEPROM.BIN file kept up-to-date with changes made to it
 - Keys read from DT6 (no longer read from RAM)
 - Card runs on (no more reseting to same conditions before each command)
 - Better ONIDLE detection (CPU saving betwen commands)
 - Engine compatible with any CMD (including CMD$02). Usefull in future ;)



Credits:
 - SNITCH was written by AlphaAXP@bigfoot.com
 - The Card's internal CPU Emulator (ST7) was written by Josillo.
 - MAP emulator written by AlphaAXP
 - Included MOSCed eeprom engineered by Joao2003


Disclaimer:
Watching Pay-TV channels you dont have a subscription for is a felony!
This software does not change that. You should only use it if you are a legitimate subscriber.

